# 3th-1问
def func(var1:list,var2:int):
    lst=[]
    for i in var1:
        if i%var2==0:
            lst.append(i)
    return lst
print(func([1,2,3,4,5,6,7,8,9,10],2))







# 3th-2问
str1 = "abcdefghijklmn54651321"
str2 = "ijkabcdeghijklmn"
def str_max(str1,str2):
    if len(str1) <=len(str2):
        str1,str2 = str2,str1

    str_sum=[]
    str1_len =len(str1)
    str2_len =len(str2)
    for i in range(str1_len):
        for j in range(str2_len):
            if str1[i] == str2[j]:
                str_sum.append(str1[i])
                break
    same_single="".join(str_sum)


    same_long=[]
    for i in range(len(same_single)):
        if same_single[:-i] in str1:
            same_long.append(same_single[:-i])
    for j in range(len(same_single)):
        if same_single[-j:] in str1:
            same_long.append(same_single[-j:])
    print(max(same_long,key=len))

# 第二道题目的解法有问题，对于短串可以找到，但是对于长串，就很容出错，因为最开始找的相同字串都错了。
# 例如
# str1 = "abcdefghijklmn54651321mn"
# str2 = "651321ijkabcdeghijklmn"
# 时